#!/usr/bin/python2
# -*- coding: cp1251 -*-

import re
import urllib
import db_oper

def parse_schedule():
	schedule_db = [] #расписание - schedule[курс][день][№ группы на курсе]
	dates = [] #даты дней недели
	group_db = [] #группы - group_db[курс][группа] - (кол-во подгрупп, номер группы)
	n = i = 0
	for num in ['one', 'two', 'three', 'four', 'five']:
		j = 0
		schedule_db.append([])

		page = urllib.urlopen('http://physics.pomorsu.ru/schedule/schedule_print_'+num+'.php').read().decode('cp1251')
		group_db.append(re.findall("\<td[^\r\n\t]*colspan=\'([1-2])\'\>[ А-Яа-я]+\№([0-9]{2})\<\/td\>".decode('utf8'), page))
		schedule_tmp = re.findall("\<td\>(.*?)\<\/td\>".decode('utf8'), page)
		if num == 'one':
			dates = re.findall("\<td[^\r\n\t]+\>[А-Яа-я]{4,12}, ([.0-9]{8,10})\<\/td\>".decode('utf-8'), page)
	
		#я понятия не имею, как я это написал, но оно работает
		for d in range(6):
			schedule_db[n].append([])
			for h in range(6):
				for g in range(len(group_db[n])):
					for sg in range(int(group_db[n][g][0])):
						if h==0:
							schedule_db[n][d].append('')
						if schedule_tmp[j] == '&nbsp;': schedule_tmp[j] = '_'
						schedule_db[n][d][i] += schedule_tmp[j] + '\n'
						j += 1
						i += 1
				i = 0

		n += 1

		db_oper.update_schedule(schedule_db, dates, group_db)
#print(db_oper.get_schedule(43, 1, 2))

parse_schedule()
